Distributed computing is the use of networked computing devices to process data. In one implementation, the data processed by a distributed computing scheme may be organized into a data structure known as a Directed Acyclic Graph (DAG). In such a scheme, a “node” of the DAG represents a computational task, and each “edge” of the DAG represent a specific flow of a data stream. Each computational task involves the use of data inputs and disk outputs. In most instances, the distributed computing scheme also involves the use of iterative algorithms to process data. The combination data input/output during each task and the use of iterative processing may result in the transfer of large amounts of DAG data via data “pipelines” at each iterative step of the distributed computing scheme.